Email is a network application emerging in earlier days, and email users can transmit data and information in a non-real-time manner with email addresses provided by a server. With email, users can achieve a non-real-time communication which, however, cannot meet a user's requirement for real time property. Instant messaging tools have appeared now for developing Instant messaging (IM) transactions to transmit data and information between users in real time.
With the development of network technology, instant messaging has been accepted by most of cyber-citizens and become an indispensable part of work and life for people, and IM tools have also been indispensable tools for people in daily work and life. IM tools are widely used in network for daily communications by transmitting text messages or transmitting data files, voice messages, etc. in real time. With the wide use of IM tools, higher demands have been made on their usability. Instant messaging is a manner of real time communication and requires users online for efficient communications. While a user is in an offline status, other users can only send deferred messages to that user.
Deferred message service is such a service that enables deferred messages to be sent to a selected user so that the user can see the messages when he/she was not online. Deferred message may be one sent by a message poster to the selected user, e.g. from user A to user B, or one sent to a selected user group, e.g. to a plurality of users that participated in an activity, or one sent to the users that have a common property, e.g. to all the VIP users.
FIG. 1 shows a prior art service system for providing deferred message. As shown in FIG. 1, the prior art service system 10 for providing deferred message includes a first client 11 used by a message poster, a second client 12 used by a target user, a server 13 and a database 14 in the server 13. The first client 11 and the second client 12 serve as a front end, and the server 13 serves as a back end.
The prior art service system 10 provides deferred message in the following operation flow. The first client 11 posts a message to the server 13. The server 13 checks whether the target user associated with the second client 12 is online; if so, the message is directly delivered to the second client 12, otherwise the message is stored in the database 14 in the server 13 as a deferred message. Then when the target user associated with the second client 12 becomes online, the server 13 obtains a notification. The server 13 checks whether there is a deferred message for the second client 12, and if so, the deferred message stored in the database 14 is delivered to the second client 12 and is deleted; in other words, the deferred message is no longer stored in the database 14 in the server 13, but stored locally in the second client 12.
In the prior art service system 10 for providing deferred message, if a large amount of deferred messages are received during the offline of the target user associated with the second client 12, a mass volume of storage space has to be used for storing these deferred messages in the database 14 in the server 13, resulting in a large consumption of storage space of the database 14. In order to avoid excessive occupation of the storage space of the database 14, a conventional approach is to keep only the deferred messages of a certain amount and in a certain period. The amount and period set for keeping deferred messages has a direct influence on the scale of the storage medium for the database 14.
Moreover, after a deferred message is delivered to the second client 12, the delivered deferred message is no longer kept in the database 14 in the server 13, but retained locally in the second client 12. The user thus can only review a history record of messages locally but not review the history record of messages on any computer. In other words, the prior art service system 10 for providing deferred message does not support roaming of history record of messages.
In addition, the prior art service system 10 for providing deferred message involves a huge amount of network traffic. When a large amount of users are online simultaneously or a large amount of users are logging-in, the huge amount of network traffic will lead to a high requirement on the outward bandwidth of the server.